Telegram Group & Telegram Channel
🐍 Задача с подвохом на Python. Что выведет данный код?
def update_dict(key, value, d={}):
d[key] = value
return d

dict1 = update_dict('a', 1)
dict2 = update_dict('b', 2, {})
dict3 = update_dict('c', 3)

print("dict1 =", dict1)
print("dict2 =", dict2)
print("dict3 =", dict3)

— Варианты ответа:

A.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'c': 3}


B.
dict1 = {'a': 1, 'c': 3}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


C.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


Какой из этих ответов правильный и почему?🧐

— Подсказка:
аргументы по умолчанию в Python вычисляются только один раз - при определении функции. Словарь, как и список, является изменяемым объектом.

В функции update_dict параметр d={} создается один раз и используется для всех вызовов, где не передается явно другой словарь.


— Правильный ответ: B

Объяснение:
1️⃣ dict1 = update_dict('a', 1) → используется словарь по умолчанию → {'a': 1}
2️⃣ dict2 = update_dict('b', 2, {}) → создан новый словарь → {'b': 2}
2️⃣ dict3 = update_dict('c', 3) → снова используется исходный словарь → {'a': 1, 'c': 3}
4️⃣ dict1 тоже изменится, так как это ссылка на тот же объект → {'a': 1, 'c': 3}

Итоговый вывод:
dict1 = {'a': 1, 'c': 3}
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


@python_job_interview



tg-me.com/python_job_interview/1104
Create:
Last Update:

🐍 Задача с подвохом на Python. Что выведет данный код?

def update_dict(key, value, d={}):
d[key] = value
return d

dict1 = update_dict('a', 1)
dict2 = update_dict('b', 2, {})
dict3 = update_dict('c', 3)

print("dict1 =", dict1)
print("dict2 =", dict2)
print("dict3 =", dict3)

— Варианты ответа:

A.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'c': 3}


B.
dict1 = {'a': 1, 'c': 3}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


C.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


Какой из этих ответов правильный и почему?🧐

— Подсказка:
аргументы по умолчанию в Python вычисляются только один раз - при определении функции. Словарь, как и список, является изменяемым объектом.

В функции update_dict параметр d={} создается один раз и используется для всех вызовов, где не передается явно другой словарь.


— Правильный ответ: B

Объяснение:
1️⃣ dict1 = update_dict('a', 1) → используется словарь по умолчанию → {'a': 1}
2️⃣ dict2 = update_dict('b', 2, {}) → создан новый словарь → {'b': 2}
2️⃣ dict3 = update_dict('c', 3) → снова используется исходный словарь → {'a': 1, 'c': 3}
4️⃣ dict1 тоже изменится, так как это ссылка на тот же объект → {'a': 1, 'c': 3}

Итоговый вывод:
dict1 = {'a': 1, 'c': 3}
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


@python_job_interview

BY Python вопросы с собеседований


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/python_job_interview/1104

View MORE
Open in Telegram


Python вопросы с собеседований Telegram | DID YOU KNOW?

Date: |

Tata Power whose core business is to generate, transmit and distribute electricity has made no money to investors in the last one decade. That is a big blunder considering it is one of the largest power generation companies in the country. One of the reasons is the company's huge debt levels which stood at ₹43,559 crore at the end of March 2021 compared to the company’s market capitalisation of ₹44,447 crore.

Telegram today rolling out an update which brings with it several new features.The update also adds interactive emoji. When you send one of the select animated emoji in chat, you can now tap on it to initiate a full screen animation. The update also adds interactive emoji. When you send one of the select animated emoji in chat, you can now tap on it to initiate a full screen animation. This is then visible to you or anyone else who's also present in chat at the moment. The animations are also accompanied by vibrations. This is then visible to you or anyone else who's also present in chat at the moment. The animations are also accompanied by vibrations.

Python вопросы с собеседований from br


Telegram Python вопросы с собеседований
FROM USA